Reducing loads and stores in stack architectures
نویسندگان
چکیده
The stack model of execution uses a stack to hold temporary results during evaluation of a program. Systems such as Java virtual machines that use this model can be implemented so that they have more efficient access to the stack than to local variables. Thus, converting local variable accesses into stack accesses can improve the performance of stack-based programs, as suggested by the experiments of Koopman [1994], Maierhofer and Ertl [1998], Vallée-Rai et al. [2000], and Shpeisman and Tikir [1999]. In this paper we provide a foundation for these experiments by formalizing and generalizing various known transformations for reducing the number of loads and stores, and by proving their correctness.
منابع مشابه
Revisiting Stack Caches for Energy Efficiency
With the growing focus on energy efficiency, it is important to find ways to reduce energy without sacrificing performance. The L1 data cache is a significant contributor to processor energy consumption. We advocate treating data from the program’s stack differently from non-stack data to reduce energy. We characterize stack accesses to determine how they differ from general memory accesses in ...
متن کاملObject-Oriented Architectural Support for a Java Processor
In this paper, we propose architectural support for object manipulation, stack processing and method invocation to enhance the execution speed of Java bytecodes. First, a virtual address object cache that supports efficient manipulation and relocation of objects is presented. The proposed scheme combines the serialized handle and object lookup into a single lookup. Next, the extended folding op...
متن کاملAggressive Schduling for Memory Accesses of CISC Superscalar Microprocessors
For CISC microprocessors, the proportion of memory access instructions is relatively high, and a specific address is likely to be accessed repeatedly in a short period of time because of register-to-memory or memory-to-memory instruction set architectures and limited register sets. As superscalar architectures advance, an aggressive scheduling policy for memory access becomes crucial. In this p...
متن کاملPerformance Advantage of the Register Stack in Intel® ItaniumTM Processors
The Intel® ItaniumTM architecture provides a virtual register stack of unlimited size for use by software. New virtual registers are allocated on a procedure call and deallocated on return. Itanium processors implement the register stack by means of a large physical register file, a mapping from virtual to physical registers, and a Register Stack Engine (RSE) that saves and restores the content...
متن کاملBit Swapping Linear Feedback Shift Register For Low Power Application Using 130nm Complementary Metal Oxide Semiconductor Technology (TECHNICAL NOTE)
Bit swapping linear feedback shift register (BS-LFSR) is employed in a conventional linear feedback shirt register (LFSR) to reduce its power dissipation and enhance its performance. In this paper, an enhanced BS-LFSR for low power application is proposed. To achieve low power dissipation, the proposed BS-LFSR introduced the stacking technique to reduce leakage current. In addition, three diffe...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2000